package com.zmn.oms.model.dto.work.modify.must;

import com.zmn.common.constant.GlobalConsts;
import com.zmn.oms.common.dto.OmsOperator;
import lombok.Data;
import lombok.ToString;

import java.util.Date;
import java.util.Map;

/**
 * 类描述：工单完成DTO
 *
 * @author lujia
 * @date 2018/12/19 10:18
 */
@Data
@ToString(callSuper = true)
public class ZsOrderPayDTO extends OmsOperator {

	/**
	 * 支付渠道
	 *
	 * @see com.zmn.pay.common.constant.PayConsts#PAY_CHANNEL_PLATFORM_ALIPAY
	 */
	private Integer payChannelId;

	/**
	 * 支付类型
	 *
	 * @see com.zmn.pay.common.constant.PayConsts#PAY_TYPE_QR
	 */
	private Integer payType;

	/**
	 * 目标支付渠道
	 * @see com.zmn.pay.common.constant.PayConsts#PAY_TYPE_QR
	 */
	private Integer payTargetChannelId;

	/**
	 * 目标渠道支付方式
	 * @see com.zmn.pay.common.constant.PayConsts#PAY_TYPE_QR
	 */
	private Integer payTargetType;

	/**
	 * 微信小程序appId，微信小程序支付必填
	 */
	private String weixinAppId;
	/**
	 * 微信openid，微信公众号或小程序支付提交openid
	 * 或
	 * 支付宝用户pid，小程序支付
	 */
	private String openId;

	/**
	 * 待支付金额（前端传值，待支付的金额，用于一致性校验）
	 */
	private Integer toPayAmount;

	/**
	 * 打款银行
	 * 余额支付为帐号id
	 */
	private String fromBank;

	/**
	 * 到账银行
	 */
	private String toBank;

	/**
	 * 转账时间
	 */
	private Date transferTime;

	/**
	 * 转账人
	 */
	private String transferor;

	/**
	 * 转账单号
	 */
	private String transferCode;

	/**
	 * 转账公司
	 */
	private String companyName;

	/**
	 * 同步支付支付
	 * @see GlobalConsts#YES
	 * 2 同步，1 异步
	 */
	private Integer syncFlag; // 默认为异步

	/**
	 * 支付金额
	 */
	private Integer payAmount;

	/***************以后余额支付、授信支付。检查帐号金额用**/
	/**
	 * 账户id
	 */
	private Long ficoAccountId;

	/**
	 * 用户id
	 */
	private Long userId;

	/**
	 * 帐号类型
	 */
	private Integer accountType;

	/**
	 * 支付凭证照片
	 */
	private String imageUrls;

	/**
	 * 是否花呗分期
	 * 1不分期，2 分期
	 * @see com.zmn.common.constant.GlobalConsts#YES、#NO
	 */
	private Integer hbStage;

	/**
	 * 花呗分期期数
	 * 仅支持(3,6,12期)
	 */
	private Integer hbStageNum;

	/**
	 * 花呗分期是否卖家承担手续
	 * 1用户承担，2 卖家承担
	 * @see com.zmn.consts.GlobalConsts#YES、#NO
	 */
	private Integer hbStageSellerCommission;

	/**
	 * 银联app支付，目标平台
	 * 微信：wx.unifiedOrder
	 * 支付宝：trade.precreate
	 * 全民付：qmf.order
	 * 银联云闪付（走银联全渠道）：uac.appOrder
	 */
	private String chinaumsPayMsgType;

	
	/**
	 * 完成码
	 */
	private String completeCode;

	/**
	 * 渠道id
	 */
	private Integer channelId;
	/**
	 * 渠道门户ID lhl-2021.01.25
	 */
	private Integer facadeId;

	/**
	 * 订单业务类型：1保外业务（C），2保内业务（F），3工程业务（B）
	 */
	private Integer bizType;

	/**
	 * 抵扣师傅收款额（该字段仅二次支付时有效）
	 */
	private Boolean subMasterAmount;

	/**
	 * H5支付，同步通知的URL地址
	 */
	private String h5PayReturnUrl;

	/**
	 * 微信支付-终端IP
	 * app和H5支付，提交的机器ip
	 * APP和网页支付提交用户端ip，Native支付填调用微信支付API的机器IP。
	 */
	private String weixinH5PayCreateIp;

	/**
	 * 代付 1: 非代付  2：代付
	 */
	private Integer agentType;

	/**
	 * 百度，快手支付accessToken
	 */
	private String accessToken;

	/**
	 * 业务透传数据
	 */
	private Map<String, String> extData;

	/**
	 * 验收id
	 */
	private Long acceptanceId;

	/**
	 * 支付明细id
	 */
	private Long orderPayId;
}
